#                   第五节  字典
# 一、基本
people = {'man':'小明','woman':'小丽'}
print('people',people)
print("people['woman']:",people['woman'])
'''
people {'man': '小明', 'woman': '小丽'}
people['woman']: 小丽
'''
# 2、添加键值对
people['boy']='小军'
print(people)
'''
{'man': '小明', 'woman': '小丽', 'boy': '小军'}
'''
# 3、修改键对应的值
people['man']='马云'
print(people)
'''
{'man': '马云', 'woman': '小丽', 'boy': '小军'}
'''
# 4、删除键值对
del people['boy']
print(people)
'''
{'man': '马云', 'woman': '小丽'}
'''
#二、占多行的键值对组成的字典
students={
    'id' : '0001',
    'name' : '马化腾',
    'gende' : '男',
    'age' : '49'
    }
print(students)
'''
{'id': '0001', 'name': '马化腾', 'gende': '男', 'age': '49'}
'''
# 2、使用get()访问值
print(students.get('name'))
print(students.get('names'),'没有该键')
print(students.get('namees'))
'''
马化腾
None 没有该键
None
'''
print(students['name'])# 没有指定键时会报错
'''
马化腾
'''
# 3、遍历字典
students={
    'id' : '0001',
    'name' : '马化腾',
    'gende' : '男',
    'age' : '49'
    }
#3.1、遍历所有键值对
for key, value in students.items():
    print(key,':\r',value) # \r 制表符 、\n 换行
'''
id :
 0001
name :
 马化腾
gende :
 男
age :
 49
'''
#3.1、遍历字典中的所有键
for key in students.keys():
    print(key)
'''
id
name
gende
age
'''
for key in students.keys():
    if 'id' in key:  #等价 'id'== key
        print(key)
    else:
        print('adc')
'''
id
adc
adc
adc
'''
name=['name','xid']
for key in students.keys():
    if key not in name:  # 'name' not in key
        print(key)
    else:
        print('adc')
'''
id
adc
gende
age
'''
# 3.2、按特定顺序遍历所有键
for key in sorted(students.keys()):#按字母顺序输出
    print(key)      
'''
age
gende
id
name
'''
#3.3、遍历字典中的所有值
for value in students.values():
    print(value)
'''
0001
马化腾
男
49
'''
# 三、 嵌套
# 1、字典列表
s1 ={'id': '0001', 'name': '马化腾'}
s2 = {'id': '0002', 'name': '马云', 'age': '53'}
s =[s1,s2] 
print(s)
'''
[{'id': '0001', 'name': '马化腾'}, {'id': '0002', 'name': '马云', 'age': '53'}]
'''
# 2、字典中存储列表
fruits={
    'id': '0101',
    'name': ['苹果','葡萄']
    }
print(fruits)
'''
{'id': '0101', 'name': ['苹果', '葡萄']}
'''
# 2、字典中存储字典  注意，字典与字典间用逗号隔开
students={
    's1':{
        'id': '0001', 'name': '马云'
        },
    's2':{
        'id': '0002','name': '马化腾'
        }
    }
print(students)
'''
{'s1': {'id': '0001', 'name': '马云'}, 's2': {'id': '0002', 'name': '马化腾'}}
'''
for student in students.values():
    print('1:',student)
    for value in student:
        print('2:',value)
'''
1: {'id': '0001', 'name': '马云'}
2: id
2: name
1: {'id': '0002', 'name': '马化腾'}
2: id
2: name
'''
